﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace ВУИ
{
    public partial class Epidem : Form
    {
        public int id;
        public Form1 Main;
        List<int> sort;
        public Epidem(int ID, Form1 MAIN)
        {
            id = ID;
            Main = MAIN;
            InitializeComponent();
            sort = new List<int>();
            if (Main.lPatient[Main.itnPatietn(id)].Epidenamnez == null) Main.lPatient[Main.itnPatietn(id)].Epidenamnez = new Epid();
            if (Main.lPatient[Main.itnPatietn(id)].Epidenamnez.Att == null) Main.lPatient[Main.itnPatietn(id)].Epidenamnez.Att = new List<int>();
            if (Main.lPatient[Main.itnPatietn(id)].Epidenamnez.Scrining == null) Main.lPatient[Main.itnPatietn(id)].Epidenamnez.Scrining = new List<Scrin>();
            foreach (EpiAtt e in Main.lEpiAtt)
            {
                checkedListBox1.Items.Add(e.Признак, Main.lPatient[Main.itnPatietn(id)].Epidenamnez.Att.IndexOf(e.Номер)>=0);
                sort.Add(e.Номер);
            }
            
            checkedListBox3.Items.Add("Семейный анамнез отягощен по герпетической инфекции",Main.lPatient[Main.itnPatietn(id)].Epidenamnez.fam);
            checkedListBox3.Items.Add("Обострение герпетической инфекции во время беременности у матери",Main.lPatient[Main.itnPatietn(id)].Epidenamnez.obostr);
          
            comboBox1.SelectedIndex = Main.lPatient[Main.itnPatietn(id)].Epidenamnez.rod;
            refresh();
            float sum = 0;
            foreach (object i in checkedListBox1.CheckedItems)
            {
                sum += Main.lEpiAtt[sort[checkedListBox1.Items.IndexOf(i)]].Значние;
            }
            if (sum<=12)
                textBox1.Text = "Диагноз ВУИ маловероятен";
            if ((sum <= 20) & (sum>12))
                textBox1.Text = "Диагноз ВУИ сомнителен";
            if (sum > 21)
                textBox1.Text = "Вероятность ВУИ очень велика";
        }

        private void checkedListBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            float sum = 0;
            foreach ( object i in checkedListBox1.CheckedItems)
            {
                sum += Main.lEpiAtt[sort[checkedListBox1.Items.IndexOf(i)]].Значние;
            }
            if (sum <= 12)
                textBox1.Text = "Диагноз ВУИ маловероятен";
            if ((sum <= 20) & (sum > 12))
                textBox1.Text = "Диагноз ВУИ сомнителен";
            if (sum > 21)
                textBox1.Text = "Вероятность ВУИ очень велика";
        }

        private void Epidem_Load(object sender, EventArgs e)
        {

        }

        private void button1_Click(object sender, EventArgs e)
        {
            Scrin s = new Scrin();
            s.data = new string[12];
            s.date = DateTime.Now;
            Main.lPatient[Main.itnPatietn(id)].Epidenamnez.Scrining.Add(s);
            Scrinning sc = new Scrinning(Main.lPatient[Main.itnPatietn(id)].Epidenamnez.Scrining.Count - 1, this);
            sc.ShowDialog();
        }
        public void refresh()
        { 
            TreeNode temp;
            treeView1.Nodes.Clear();
            foreach (Scrin s in Main.lPatient[Main.itnPatietn(id)].Epidenamnez.Scrining)
            {
                temp = new TreeNode();
                temp.Text = s.date.ToShortDateString();
                temp.Tag = treeView1.Nodes.Count;
                treeView1.Nodes.Add(temp);
                
            }
        }

        private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
        {

            
        }

        private void treeView1_NodeMouseDoubleClick(object sender, TreeNodeMouseClickEventArgs e)
        {
            Scrinning sc = new Scrinning(Convert.ToInt32(e.Node.Tag), this);
            sc.ShowDialog();
        }

        private void button3_Click(object sender, EventArgs e)
        {
            Main.lPatient[Main.itnPatietn(id)].Epidenamnez.Att.Clear();
            foreach ( object i in checkedListBox1.CheckedItems)
            {
               Main.lPatient[Main.itnPatietn(id)].Epidenamnez.Att.Add(sort[checkedListBox1.Items.IndexOf(i)]);
            }
            Main.lPatient[Main.itnPatietn(id)].Epidenamnez.fam = checkedListBox3.CheckedItems.IndexOf(checkedListBox3.Items[0])>=0;
            Main.lPatient[Main.itnPatietn(id)].Epidenamnez.obostr = checkedListBox3.CheckedItems.IndexOf(checkedListBox3.Items[1]) >= 0;
            Main.lPatient[Main.itnPatietn(id)].Epidenamnez.rod = comboBox1.SelectedIndex;
            Close();
        }

        private void button2_Click(object sender, EventArgs e)
        {
            Close();
        }

        private void toolStripButton1_Click(object sender, EventArgs e)
        {
            EpiOt k = new EpiOt(Main,id);
            k.ShowDialog();
        }
    }
}
